package com.whfc.emp.dao;

import com.whfc.emp.dto.AppHelmetDTO;
import com.whfc.emp.entity.AppDeviceCardLog;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface AppDeviceCardLogMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(AppDeviceCardLog record);

    int insertSelective(AppDeviceCardLog record);

    AppDeviceCardLog selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(AppDeviceCardLog record);

    int updateByPrimaryKey(AppDeviceCardLog record);

    /**
     * 查询人员原始数据
     *
     * @param empId
     * @param startTime
     * @param endTime
     * @return
     */
    List<AppDeviceCardLog> selectHelmetDataLogListByEmpId(@Param("empId") Integer empId, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    /**
     * 查询设备(安全帽)原始数据
     *
     * @param deviceId
     * @param startTime
     * @param endTime
     * @return
     */
    List<AppDeviceCardLog> selectHelmetDataLogListByDeviceId(@Param("deviceId") Integer deviceId, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    /**
     * 查询人员硬件数据
     *
     * @param empIds
     * @param startTime
     * @param endTime
     * @return
     */
    List<AppHelmetDTO> selectHelmetDataByEmpIds(@Param("empIds") List<Integer> empIds, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    /**
     * 查询人员ID列表
     *
     * @param startTime
     * @param endTime
     * @return
     */
    List<Integer> selectEmpIdList(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
}